import Vue from 'vue'
import Vuex from 'vuex'
import createPersistedState from 'vuex-persistedstate'
import cartModule from './modules/cart'
import addresModule from './modules/address'
import userModule from './modules/user'

Vue.use(Vuex)

export default new Vuex.Store({
  // 在开发环境下启用严格模式
  // 不建议在生产环境下启用严格模式，因为深度监听状态树可能造成性能损失
  strict: process.env.NODE_ENV !== 'production',
  // plugins: [savePlugin], // 使用 vuex 的插件
  plugins: [createPersistedState({
    storage: sessionStorage, // 保存到本地存储中，默认为 localStorage
  })],
  state: {
  },
  getters: {
  },
  mutations: {
  },
  actions: {
  },
  modules: {
    cart: cartModule,
    address: addresModule,
    user: userModule,
  },
})
